/*
 * pagina.h
 *
 *  Created on: 04/03/2013
 *      Author: lares
 */

#ifndef PAGINA_H_
#define PAGINA_H_

#include "uthash.h"
#include <stdio.h>

typedef struct pagina {
	int id;
	char* linha;
	int nTupla;
	int tamanhoTupla;
	int* colunas; //Ponteiro para um vetor de int
	UT_hash_handle hh; //Faz a estrutura ser "Hashable";
} Pagina;

extern Pagina *hashPagina;

void freePagina(Pagina*);
char* splitTuplas(Pagina*);
void tamanhoArquivo(FILE*);
int tamanhoLinha(FILE*);
char* splitHeader(char*);
char* lerPagina(FILE*, int, int);
char* lerPaginaLinhaToda(FILE*, int, int);
Pagina* constroiPagina(FILE*, int, int);

#endif /* PAGINA_H_ */
